System and Method for Automatic Repositioning of Market Information in a Graphical User Interface

ABSTRACT

A method for automatically positioning information related to a commodity on a graphical user interface. Market information is displayed on the graphical user interface. The market information may be presented as a number of indicators, corresponding to particular items of interest, that are associated with a static scale. The scale may, for example, represent price. Upon detecting a predetermined condition, the location of the market information is automatically repositioned.

This application is a continuation of U.S. patent application Ser. No.10/403,881, filed Mar. 31, 2003, which is a continuation of U.S. patentapplication Ser. No. 10/125,894, entitled “Trading Tools for ElectronicTrading,” filed Apr. 19, 2002, now U.S. Pat. No. 7,389,268, which is acontinuation-in-part of U.S. patent application Ser. No. 09/971,087,filed Oct. 5, 2001, now U.S. Pat. No. 7,127,424, which claims priorityfrom U.S. Provisional Application No. 60/238,001, filed Oct. 6, 2000.U.S. patent application Ser. No. 10/125,894 is also acontinuation-in-part of U.S. patent application Ser. No. 09/590,692,filed Jun. 9, 2000, now U.S. Pat. No. 6,938,001, and of U.S. patentapplication Ser. No. 09/589,751, filed Jun. 9, 2000, now U.S. Pat. No.6,772,132. The Ser. Nos. 09/590,692 and 09/589,751 both claim priorityfrom U.S. Provisional Application No. 60/186,322, filed Mar. 2, 2000.U.S. patent application Ser. No. 10/125,894 also claims priority fromU.S. Provisional Application No. 60/325,553, filed Oct. 1, 2001. Theentire contents of each of the above-referenced applications areincorporated herein by reference for all purposes.

FIELD OF INVENTION

The present invention is directed to electronic trading. Specifically,the present invention is directed to tools for trading products that canbe traded with quantities and/or prices.

BACKGROUND

Many exchanges throughout the world utilize electronic trading invarying degrees to trade stocks, bonds, futures, options and otherproducts. These electronic exchanges are based on three components:mainframe computers (host), communications servers, and the exchangeparticipants' computers (client). The host forms the electronic heart ofthe fully computerized electronic trading system. The system'soperations cover order-matching, maintaining order books and positions,price information, and managing and updating the database for the onlinetrading day as well as nightly batch runs. The host is also equippedwith external interfaces that maintain uninterrupted online contact toquote vendors and other price information systems.

Traders can link to the host through at least three types of structures:high speed data lines, high speed communications servers or theInternet. High speed data lines establish direct connections between theclient and the host. Another connection can be established byconfiguring high speed networks or communications servers at strategicaccess points worldwide in locations where traders physically arelocated. Data is transmitted in both directions between traders andexchanges via dedicated high speed communication lines. Most exchangeparticipants install two lines between the exchange and the client siteor between the communication server and the client site as a safetymeasure against potential failures. An exchange's internal computersystem is also often installed with backups as a redundant measure tosecure system availability. The third connection utilizes the Internet.Here, the exchange and the traders communicate back and forth throughhigh speed data lines, which are connected to the Internet. This allowstraders to be located anywhere they can establish a connection to theInternet.

Irrespective of the way in which a connection is established, theexchange participants' computers allow traders to participate in themarket. They use software that creates specialized interactive tradingscreens on the traders' desktops. The trading screens enable traders toenter and execute orders, obtain market quotes, and monitor positions.The range and quality of features available to traders on their screensvaries according to the specific software application being run. Theinstallation of open interfaces in the development of an exchange'selectronic strategy means users can choose, depending on their tradingstyle and internal requirements, the means by which they will access theexchange.

The world's stock, bond, futures, options and other exchanges havevolatile products with prices that move rapidly. To profit in thesemarkets, traders must be able to react quickly. A skilled trader withthe quickest software, the fastest communications, and the mostsophisticated analysis can significantly improve the trader's own or thetrader's firm's bottom line. The slightest speed advantage can generatesignificant returns in a fast moving market. In today's securitiesmarkets, a trader lacking a technologically advanced interface is at asevere competitive disadvantage.

Irrespective of what interface a trader uses to enter orders in themarket, each market supplies to and requires from every trader the sameinformation. The bids and asks in the market make up the market data andeveryone logged on to trade can receive this information if the exchangeprovides it. Similarly, every exchange requires that certain informationbe included in each order. For example, traders must supply informationlike the name of the commodity, quantity, restrictions, price andmultiple other variables. Without all of the order information, themarket will not accept the order.

In existing systems, multiple elements of an order must be entered priorto an order being sent to market, which is time consuming for thetrader. Such elements include the commodity symbol, the desired price,the quantity and whether a buy or a sell order is desired. The more timea trader takes entering an order, the more likely the price on which thetrader wanted to bid or offer will change or not be available in themarket. The market is fluid as many traders are sending orders to themarket simultaneously. In fact, successful markets strive to have such ahigh volume of trading that any trader who wishes to enter an order willfind a match and have the order filled quickly, if not immediately. Insuch liquid markets, the prices of the commodities fluctuate rapidly. Ona trading screen, this results in rapid changes in the price andquantity fields within the market grid. If a trader intends to enter anorder at a particular price, but misses the price because the marketprices moved before the trader could enter the order, the trader maylose hundreds, thousands, even millions of dollars. The faster a tradercan trade, the less likely it will be that the trader will miss thetrader's price and the more likely the trader will make money.

With the advent of electronic trading, it has become easier for a largernumber of people to have access to participate in the market at anygiven time. Such an increase in the number of potential traders has leadto other changes, including a more competitive market, greaterliquidity, rapidly changing prices, and other changes. Due to thecomplexities that these changes bring, it is increasingly important tohave a system of making the most accurate and calculated trades possiblein the most efficient manner. It is therefore desirable for electronictrading systems to offer tools that can assist a trader in adapting toan electronic marketplace, and help the trader to make trades atdesirable prices.

SUMMARY

The preferred embodiments relate to a system and method for automaticrepositioning of market information in a graphical user interface.

In accordance with a first aspect, a method for automaticallypositioning information related to a commodity on a graphical userinterface is provided. The method includes receiving market informationrelating to the commodity from an electronic exchange. The marketinformation may include a number of items of interest that areassociated with a price. The method displays an information displayregion, which has a number of locations arranged such that each locationcorresponds to a price level along at least a portion of a static priceaxis. The method also displays a number of indicators, at a first time.Each indicator is associated with an item of interest and each indicatoris displayed in one of the locations in the information display region.The method further includes automatically repositioning the static priceaxis upon detecting a predetermined condition so that the number oflocations of the information display region corresponds to a differentportion of the static price axis at a second time. In this manner, theindicators are moved to a new location in the information display regionthat corresponds to the price level on the static price axis that isassociated with that indicator.

In accordance with a second aspect, a method for automaticallyre-positioning market information relating to a commodity on a graphicaluser interface is provided, where the method includes displaying aplurality of items of interest comprising market information in relationto a static scale in a trading interface. At least one item of interestfrom the plurality of items of interest is identified as a basis forautomatically positioning the plurality of items of interest. Thedisplay on the trading interface is updated as the market informationchanges, causing one or more of the plurality of items of interest tomove in relation to the static scale. The method then automaticallyre-positions the plurality of items of interest in response to theidentified item of interest.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates the network connections between multiple exchangesand client sites;

FIG. 2 illustrates screen display showing the inside market and themarket depth of a given commodity being traded;

FIG. 3 illustrates an alternative display, having bid and ask quantitiesdisplayed in association with a static price scale, that may be used inaccordance with preferred embodiments;

FIG. 4 illustrates the display at a later time showing the movement ofvalues when compared to FIG. 3;

FIG. 5 illustrates a display with parameters set in order to exemplifythe trading method;

FIG. 6 is a flowchart illustrating one process for display and tradingusing the displays of FIGS. 3 through 5;

FIG. 7 illustrates a Last Traded Quantity marker in accordance with apreferred embodiment, and further illustrates color coding of the LastTraded Quantity;

FIG. 8 is a diagram showing the transfer of multiple data feeds betweenan exchange and a client;

FIG. 9 is a diagram showing a disruption in one of the data feeds shownin FIG. 8;

FIG. 10 illustrates a display showing the aggregated working quantitiesin a market for a user's buy and sell orders;

FIGS. 11A and 11B are displays showing a dynamic indicator;

FIGS. 12A and 12B are displays showing “arrow” cells that may be used toview items of interest outside the current display;

FIGS. 13A and 13B are displays showing examples of thermometerindicators to illustrate the quantity of buy and sell interest in amarket;

FIGS. 14A and 14B are displays illustrating auto scalper indicators;

FIGS. 15A and 15B are a display showing an embodiment in which a usermay select the price level reasonability check feature through a dialogbox, and a display showing a measure of reasonability in relation to theLast Traded Price, respectively;

FIG. 16A is a display showing the display of the last traded price andinside market for use with the automatic grid centering feature of apreferred embodiment; and FIG. 16B is a display showing how a user mayselect and manipulate the automatic grid positioning feature;

FIG. 17 is a display showing a user's current working sell quantitiesand working buy quantities and additional criteria used for implementingthe “drag and drop” feature of a preferred embodiment;

FIG. 18 is a display showing the working quantities of a user inaddition to the user's average working buy price and average workingsell price;

FIGS. 19A and 19B are displays showing the function of the highlightmidpoint re-centering feature of a preferred embodiment; FIG. 19C is asample GUI options dialog box in which the highlight midpointre-centering feature can be activated according to one embodiment of thepresent invention;

FIG. 20A is a display showing how blank spots are color-coded accordingto one embodiment; FIG. 20B is a display of a sample GUI options dialogbox in which a user can activate the color coding feature of FIG. 20A;

FIG. 21 is a display showing how the average price of a trader's openposition is indicated according to one embodiment of the invention; and

FIG. 22 is a display showing one embodiment of a consolidation controlicon in accordance with a preferred embodiment.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

As described with reference to the accompanying figures, trading toolsin accordance with various preferred embodiments are provided to, amongother things, facilitate fast and accurate order entry. Certain of thetrading tools work particularly well with a trading display that showsworking orders and/or bid and ask quantities, or other marketinformation, displayed in association with a static price scale or axis.An example of such a trading display is illustrated in FIGS. 3 through5. It is to be understood that, in this context, static does not meanimmovable, but rather means fixed in relation. For example, with astatic price scale, the scale itself may be movable, but the pricesrepresented remain fixed in relation to each other, subject toconsolidation or expansion as described below. Trading applications thatgenerate different trading displays may alternatively be used.

In a preferred embodiment, one or more of the trading tools describedherein is implemented on a computer or electronic terminal. The computeris able to communicate either directly or indirectly (using intermediatedevices) with one or more exchanges to receive and transmit market,commodity, and trading order information. The computer or terminal isable to interact with the trader and to generate contents andcharacteristics of a trade order to be sent to the exchange. A tradingapplication allows for a trader to view market data, enter and canceltrade orders and/or view orders. The scope of the present invention isnot limited by the type of terminal or device used, and is not limitedto any particular type of trading application. Rather, the trading toolsmay be implemented on any existing or future terminal or device with theprocessing capability to perform the functions described herein.

As used herein, the word “commodity” refers simply to a thing that is anobject of trade. It includes anything that can be traded with a quantityand/or price. Examples of such objects include, but are not limited to,all types of traded financial products, such as, for example, stocks,options, bonds, futures, currency, and warrants, as well as funds,derivatives and collections or combinations of the foregoing. Thecommodity may be “real,” such as objects that are listed by an exchangefor trading, or “synthetic,” such as a combination of real commoditiesthat is created by the user.

Further, the specification may refer to a single click of a mouse as anexample of a single action of the user for input and interaction withthe terminal display. In order to allow actions to be taken in theshortest amount of time, a preferred embodiment of the tradingapplication responds upon depressing the mouse button, rather thanwaiting for the up click. While this may describe a preferred mode ofinteraction, the scope of the present invention is not limited to theuse of a mouse as the input device or to the click of a mouse button asthe user's single action. Rather, any action by a user, whethercomprising one or more clicks of a mouse button or other input device,such as a keyboard, joystick or touch screen, may be considered thesingle action of the user.

An electronic trading system may be configured to allow for trading in asingle or in multiple exchanges simultaneously. Connections for anexample of such a system are illustrated in FIG. 1. This illustrationshows multiple host exchanges 101-103 connected through routers 104-106to gateways 107-109. Multiple client terminals 110-116 for use astrading stations can then trade in the multiple exchanges through theirconnection to the gateways 107-109. It should be noted that the tradingtools of the preferred embodiment are not limited to any particularnetwork architecture, but rather may be applied with utility onworkstations or other client devices in any network that can be used forelectronic trading.

When an electronic trading system is configured to receive data frommultiple exchanges, it is preferable to translate the data from eachexchange into a format that may be displayed using a graphical userinterface. For the example shown in FIG. 1, an application programinterface (“TT API” as depicted in the FIG. 1) translates the incomingdata formats from the different exchanges to a common data format. Thistranslation function of a preferred embodiment may be disposed anywherein the network, for example, at the gateway server, at the individualworkstations or at both. In addition, storage elements at the gatewayservers, the client workstations, and/or other external storage maycache, buffer, or store historical data, such as order books that listthe user's active orders in the market; that is, those orders that haveneither been filled nor cancelled. Information from different exchangescan be displayed in one or in multiple windows at the clientworkstation. Accordingly, while reference is made through the remainderof the specification to a single exchange to which a trading terminal isconnected, the scope of the invention includes the ability to trade, inaccordance with the trading methods described herein, in multipleexchanges using a single trading terminal.

A commercially available trading application that allows a user to tradein a system like that shown in FIG. 1 is X_TRADER® from TradingTechnologies International, Inc. of Chicago, Ill. X_TRADER® alsoprovides an electronic trading interface, referred to as MD_TRADER™, inwhich working orders and/or bid and ask quantities are displayed inassociation with a static price scale. The preferred embodiments,however, are not limited to any particular product that performs thetranslation, storage and/or display functions.

Several preferred embodiments include the display of “market depth”and/or allow a user to view the market depth of a commodity and to enterorders with a single input, such as the click of a computer mousebutton. As used herein, market depth is represented by the availableorder book, including the current bid and ask quantities and theirassociated prices. In other words, subject to the limits noted below,market depth is each available pending bid and ask quantity, entered ata particular price, in addition to the “inside market.” For a commoditybeing traded, the inside market is the highest bid price and the lowestask price. For embodiments relating to a display that includes marketdepth, interfaces as shown in FIGS. 2 and 3 are exemplary. Other tradingapplications that are capable of displaying market depth are suitablealternatives, unless otherwise noted. Furthermore, the preferredembodiments are not limited to an electronic trading application thatdisplays market depth, but can be utilized with any electronic tradingapplication.

Generally, the exchanges send price, order and fill information to thegateways 107-109. The trading application, for example X_TRADER®,processes this information and maps it to positions in a theoreticalgrid program or any other comparable mapping technique for mapping datato a screen. The physical mapping of such information to a screen grid,for display on a client device like the client devices 110-116, may bedone by any technique known to those skilled in the art. The presentinvention is not limited by the method used to map the data to thescreen display.

The system's ability to fully display the market depth typically dependson how much of the market depth the exchange provides. Some exchanges,for example, supply an infinite market depth, while others provide nomarket depth or only a few orders away from the inside market. The usercan preferably also choose how far into the market depth to display onthe trader's screen. For example, the user may only want to havedisplayed the market depth within a predetermined number of ticks awayfrom the inside market.

FIG. 2 illustrates an electronic trading interface described in aco-pending U.S. patent application Ser. No. 09/589,751, incorporatedabove. This display and system is just one example of a type of tradingsystem that may incorporate one or more aspects of the presentinvention. The display shows the inside market and the market depth of agiven commodity being traded. Row 1 represents the “inside market” forthe commodity being traded which is the best (highest) bid price andquantity and the best (lowest) ask price and quantity. Rows 2-5represent the “market depth” for the commodity being traded. In onepreferred embodiment, the display of market depth (rows 2-5) lists theavailable next-best bids, in column 203, and asks, in column 204. Theworking bid and ask quantity for each price level is also displayed incolumns 202 and 205 respectively (inside market—row 1). Prices andquantities for the inside market and market depth update dynamically ona real time basis as such information is relayed from the market.

In the screen display shown in FIG. 2, the commodity (contract) beingtraded is represented in row 1 by the character string “CDH0”. The Depthcolumn 201 will inform the trader of a status by displaying differentcolors. Yellow indicates that the program application is waiting fordata. Red indicates that the Market Depth has failed to receive the datafrom the server and has “timed out.” Green indicates that the data hasjust been updated. The other column headings in this and all of theother figures, are defined as follows. BidQty (Bid Quantity) at column202: the quantity for each working bid; BidPrc (Bid Price) at column203: the price for each working bid; AskPrc (Ask Price) at column 204:the price for each working ask; AskQty (Ask Quantity) at column 205: thequantity for each working ask; LastPrc (Last Price) at column 206: theprice for the last bid and ask that were matched in the market; andLastQty (Last Quantity) at column 207: the quantity traded at the lastprice. Total at column 208 represents the total quantity traded of thegiven commodity.

The configuration of the screen display itself informs the user in amore convenient and efficient manner than many existing systems. Tradersgain an advantage by seeing the market depth because they can see trendsin the orders in the market. The market depth display shows the traderthe interest the market has in a given commodity at different pricelevels.

Another type of display system and related trading method which may beused in conjunction with the preferred embodiments is described indetail in U.S. application Ser. No. 09/590,692, filed on Jun. 9, 2000.This method ensures fast and accurate execution of trades by displayinginformation, such as market depth or working orders, in association withan axis or scale of static prices. One embodiment using this type ofdisplay system displays the market depth on a vertical plane, whichfluctuates logically up or down the plane as the market pricesfluctuates. The invention is not limited to any particular display—theinformation could be displayed on a horizontal plane, n-dimensionally orin any other fashion. This allows the trader to trade quickly andefficiently. An example of such a display is illustrated in the screendisplay of FIG. 3.

In a fast moving market, where varying price levels are trading (i.e.bids and offers entering the market are being matched at differentprices), it is beneficial that the trader be able to quickly enterorders and quickly see and analyze market information. Displays of thetype illustrated in FIG. 3 allow the trader to quickly enter orders atspecific price levels by clicking next to a static price level,displayed as a static column in a preferred embodiment and to quicklyand easily see information such as working orders. The static prices canbe displayed in any matter, including in a row, on any angle, orn-dimensionally, without departing from the invention. It also ispossible for the static price values to not be displayed, insteaddisplaying just the market depth levels, working orders, or otherinformation relative to one another along a scale or axis representingparticular prices using particular colors or using other methods.

The display shown in FIG. 3 provides an order entry system, market grid,fill window and summary of market orders in one simple window. Such acondensed display simplifies the trading system by entering and trackingtrades in an efficient manner. This system displays market depth in alogical, vertical fashion or horizontally or at some other convenientangle or configuration. A vertical field is shown in the figures anddescribed for convenience, but the field could be horizontal or at anangle or n-dimensionally. The system further increases the speed oftrading and the likelihood of entering orders at desired prices withdesired quantities. In the preferred embodiment of the invention, thedisplay is a static vertical column of prices with the bid and askquantities displayed in vertical columns to the side of the price columnand aligned with the corresponding bid and ask prices.

Bid quantities are in column 300 labeled BidQ and ask quantities are incolumn 302 labeled AskQ. The representative prices for the givencommodity are shown in column 304, where the prices are static andincrement in “ticks,” where a tick is the minimum change in a pricevalue that is set by the exchange for each commodity. The prices can bedisplayed as ticks, as multiples of ticks or in any other fashion. Inthe embodiment shown in FIG. 3, the column does not list the wholeprices (e.g. 95.89), but rather, just the last two digits (e.g. 89).Other price display conventions may alternatively be used, as long asthe requisite price information is conveyed to the user. In the exampleshown, the inside market, cells 306, is 18 (best bid quantity) at 89(best bid price) and 20 (best ask quantity) at 90 (best ask price). Inthe preferred embodiment of the invention, these three columns 300, 302,and 304 are shown in different colors so that the trader can quicklydistinguish among them.

The values in the price column are static; that is, they do not normallychange positions unless a re-centering command is received (discussed indetail later). The values in the Bid and Ask columns 300 and 302,however, are dynamic; that is, they move up and down (in the verticalexample) to reflect the market depth for the given commodity. The LTQcolumn 308 shows the last traded quantity of the commodity. The relativeposition of the quantity value with respect to the Price values reflectsthe price at which that quantity was traded. Column 310 labeled E/W(Executed/Working) displays the current status of the trader's orders.The status of each order is displayed in the price row where it wasentered. For example, in cells 312, the number next to S indicates thenumber of the trader's ordered lots that have been sold at the price inthe specific row. The number next to W indicates the number of thetrader's ordered lots that are in the market, but have not beenfilled—i.e. the system is working on filling the order. Blanks in thiscolumn indicate that no orders are entered or working at that price. Incells 314, the number next to B indicates the number of the trader'sordered lots that have been bought at the price in the specific row. Thenumber next to W indicates the number of the trader's ordered lots thatare in the market, but have not been filled—i.e. the system is workingon filling the order.

Various parameters are set and information is provided in column 316.For example, “10:48:44” in cell 318 shows the actual time of day. The Land R fields in cell 320 indicate a quantity value, which may be addedto the order quantity entered. This process is explained below withrespect to trading under this system. Below the L and R fields, in cell322, a number appears which represents the current market volume. Thisis the number of lots that have been traded for the chosen commodity.Cell 324, “X 10”, displays the Net Quantity, the current position of thetrader on the chosen commodity. The number “10” represents the trader'sbuys minus sells. Cell 326 is the “Current Quantity”; this fieldrepresents the quantity for the next order that the trader will send tomarket. This can be adjusted with right and left clicks (up and down) orby clicking the buttons which appear below the Current Quantity in cells328. These buttons increase the current quantity by the indicatedamount; for example, “10” will increase it by 10; “1H” will increase itby 100; “1K” will increase it by 1000. Cell 330 is the Clear button;clicking this button will clear the Current Quantity field. Cell 332 isthe Quantity Description; this is a pull-down menu allowing the traderto chose from three Quantity Descriptions. In one embodiment, thepull-down menu is displayed when the arrow button in the window isclicked. The window includes NetPos, Offset and a field allowing thetrader to enter numbers. Placing a number in this field will set adefault buy or sell quantity. Choosing “Offset” in this field willenable the L/R buttons of cell 320. Choosing “NetPos” in this field willset the current Net Quantity (trader's net position) as the trader'squantity for his next trade. Cell 334 are +/− buttons; these buttonswill alter the size of the screen—either larger (+) or smaller (−). Cell336 is used to invoke Net 0; clicking this button will reset the NetQuantity (cell 332) to zero. Cell 338 is used to invoke Net Real;clicking this button will reset the Net Quantity (cell 322) to itsactual position. It is to be understood that the preferred embodimentsare not limited to a trading application that displays these particularbuttons. Preferably, the buttons displayed and any parameter, such asquantity, that is set by those buttons are customizable or selectable bythe user.

The inside market and market depth ascend and descend as prices in themarket increase and decrease. For example, FIG. 4 shows a screendisplaying the same market as that of FIG. 3, but at a later intervalwhere the inside market, cells 400, has risen three ticks. Here, theinside market for the commodity is 43 (best bid quantity) at 92 (bestbid price) and 63 (best ask quantity) at 93 (best ask price). Incomparing FIGS. 3 and 4, it can be seen that the price column remainedstatic, but the corresponding bids and asks rose up the price column.

As the market ascends or descends the price column, the inside market,working orders, last traded price and/or quantity, or any other itemthat may be of interest might go above or below the price columndisplayed on a trader's screen. Usually a trader will want to be able tosee the inside market to assess future trades. The system addresses thisproblem with a positioning feature. With a single click at any pointwithin the gray area, 342 in FIG. 3, below the “Net Real” button, thesystem will re-position the inside market on the trader's screen. As analternative, this positioning feature may be programmed to be triggeredby clicking in any area of the display. Also, when using a three-buttonmouse, a click of the middle mouse button, irrespective of the locationof the mouse pointer, will re-position the inside market on the trader'sscreen. As noted above, the display alternatively may be re-positionedbased on other items of interest beside the inside market.

The same information and features can be displayed and enabled in ahorizontal or other fashion. Just as the market ascends and descends thevertical scale in this preferred embodiment, shown in FIGS. 3 and 4, themarket will move left and right in the horizontal display. The same dataand the same information gleaned from the dynamic display of the data isprovided. It is envisioned that other orientations can be used todynamically display the data and such orientations are intended to comewithin the scope of the present invention.

The specific features of the embodiment of a display as shown in FIGS. 3and 4 are exemplary of one embodiment of a screen display that can beused with the present invention. The present invention is in no waylimited, however, to a screen display that utilizes each of thesefeatures.

Placing Trade Orders

Next, trading commodities, and specifically, the placement of tradeorders using a representative display of the type shown in FIG. 3 isdescribed. Using the display and trading method, a trader would firstdesignate the desired commodity and, if applicable, the defaultquantities. The trader can then trade by positioning an icon andindicating an action, for example with a click of the right or leftmouse button. The term “click” may refer to a “half-click” or buttondown event for any action depending upon the user's and/or systemdesigner's requirements or preferences.

The following equations are used by this exemplary system to generatetrade orders and to determine the quantity and price to be associatedwith the trade order. The following abbreviations are used in theseformulas: P=Price value of row clicked (in ticks), R=Value in R field,L=Value in L field, Q=Current Quantity, Q_(a)=Total of all quantities inAskQ column at an equal or better price than P, Q_(b)=Total of allquantities in BidQ column at an equal or better price than P, N=CurrentNet Position, Bo=Buy order sent to market and So=Sell order sent tomarket.

Any order entered using right mouse button

Bo=(Q _(a) +R)P  (Eq. 1) If BidQ field clicked.

So=(Q _(b) +R)P  (Eq. 2) If AskQ field clicked.

Orders entered using the left mouse button

If “Offset” mode chosen in Quantity Description field then:

Bo=(Q _(a) +L)P  (Eq. 3) If BidQ field clicked.

So=(Q _(b) +L)P  (Eq. 4) If AskQ field clicked.

If “number” mode chosen in Quantity Description field then:

Bo=QP  (Eq. 5)

So=QP  (Eq. 6)

If “NetPos” mode chosen in Quantity Description field then:

Bo=NP  (Eq. 7)

So=NP  (Eq. 8)

Orders also can be sent to market for quantities that vary according tothe quantities available in the market; quantities preset by the trader;and which mouse button the trader clicks. Using this feature, a tradercan buy or sell all of the bids or asks in the market at or better thana chosen price with one click. The trader also could add or subtract apreset quantity from the quantities outstanding in the market. If thetrader clicks in a trading cell—i.e. in the BidQ or AskQ column, thetrader will enter an order in the market. The parameters of the orderdepend on which mouse button the trader clicks and what preset valuesthe trader set.

Using the screen display and values from FIG. 5, the placement of tradeorders using the display and trading method is now described usingexamples. A left click on the 18 in the BidQ column 500 will send anorder to market to buy 17 lots (quantity # chosen on the QuantityDescription pull-down menu cell 502) of the commodity at a price of 89(the corresponding price in the Prc column 504). Similarly, a left clickon the 20 in the AskQ column 506 will send an order to market to sell 17lots at a price of 90.

Using the right mouse button, for example, an order would be sent tomarket at the price that corresponds to the row clicked for the totalquantity of orders in the market that equal or better the price in thatrow plus the quantity in the R field 508. Thus, a right click in theAskQ column 506 in the 87 price row will send a sell order to market ata price of 87 and a quantity of 150, where 150 is the sum of all thequantities 30, 97, 18 and 5. The quantities 30, 97 and 18 are all of thequantities in the market that would meet or better the trader's sellorder price of 87. These quantities are displayed in the BidQ column 500because this column represents the orders outstanding in the market topurchase the commodity at each corresponding price. The quantity 5 isthe quantity pre-set in the R field 508.

Similarly, a right click in the BidQ column 500 at the same price levelof 87 would send a buy limit order to market for a quantity of 5 at aprice of 87. The quantity is determined in the same manner as above. Inthis example, though, there are no orders in the market that equal orbetter the chosen price—there are no quantities in the AskQ column 506that equal or better this price. Therefore, the sum of the equal orbetter quantities is zero (“0”). The total order entered by the traderwill be the value in the R field 508, which is 5.

An order entered with the left mouse button, for example, and the“Offset” option chosen in the quantity description field 502 will becalculated in the same way as above, but the quantity in the L field 510will be added instead of the quantity in the R field 508. Thus, a leftclick in the BidQ column 500 in the 92 price row will send a buy orderto market at a price of 92 and a quantity of 96. The quantity 96 is thesum of all the quantities 45, 28, 20 and 3. 45, 28 and 20 are allquantities in the market that would meet or better the trader's buyorder price of 92. These quantities are displayed in the AskQ column 506because this column represents the orders outstanding in the market tosell the commodity at each corresponding price. The quantity 3 is thequantity pre-set in the L field 510.

The values in the L or R fields 510, 508 may be negative numbers. Thiswould effectively decrease the total quantity sent to market. In otherwords, in the example of a right click in the AskQ column 506 in the 87price row, if the R field 508 was −5, the total quantity sent to marketwould be 140 (30+97+18+(−5)).

If a trader chose the “NetPos” option in the quantity description field502, a right click, for example, would still work as explained above. Aleft click would, for example, enter an order with a price correspondingto the price row clicked and a quantity equal to the current Netposition of the trader. The Net position of the trader is the trader'scurrent position on the chosen commodity. In other words, if the traderhas bought 10 more commodities than the trader has sold, this valuewould be 10. NetPos would not affect the quantity of an order sent witha right click.

If the trader chose a number value in the quantity description, a leftclick would send an order to market for the current quantity chosen bythe trader. The default value of the current quantity will be the numberentered in the quantity description field, but it could be changed byadjusting the figure in the current quantity field 502.

An embodiment of the system also allows a trader to delete all of hisworking orders with a single click of either the right or left mousebutton anywhere in the last traded quantity (LTQ) column 512 (thisfunctionality can be provided in any general area of the screen as wellor as an alternative). This allows a trader to exit the marketimmediately. An embodiment of the invention also allows a trader todelete all of his orders from the market at a particular price level. Aclick with either mouse button in the Executed/Working (E/W) column 514will delete all working orders in the cell that was clicked. Thus, if atrader believes that previously sent orders at a particular price thathave not been filled would be poor trades, the trader can delete theseorders with a single click.

A process for placing trade orders using the display and trading methodas described above is shown in the flowchart of FIG. 6. Prior to placinga trade order, the system provides preliminary fields for the input ofdata, such as the selection of a customer profile, the order quantity,and the maximum trade quantity. Once these preliminary fields areentered and the trader indicates the desire to place a trade order, thesystem will determine whether the trader performed the necessary actionsto conduct a trade. For example, the invention will determine if themouse pointer was positioned over a tradable cell when the attempt toclick trade was performed. If it is determined that a viable trade wasrequested, the system will create and send a limit order to the exchangeat a quantity and price based on the preliminary settings and marketprices. The system affords a trader the opportunity to change the orderquantity preset buttons. The default quantities for these power buttonsare 1, 5, 10, 20, 50, and 100. However, in this preferred embodiment thetrader can alter any or all of these default quantities by performing aright click on each specific button and manually entering a differentnumber quantity.

In step 600, the trader has the display on the trading terminal screenshowing the market for a given commodity. In step 602, the parametersare set in the appropriate fields, such as the L and R fields and theCurrent Quantity, NetPos or Offset fields from the pull-down menu. Instep 604, the mouse pointer is positioned and clicked over a cell in thedisplay by the trader. In step 606, the system determines whether thecell clicked is a tradeable cell (i.e. in the AskQ column or BidQcolumn). If not, then in step 608, no trade order is created or sentand, rather, other quantities are adjusted or functions are performedbased upon the cell selected. Otherwise, in step 610, the systemdetermines whether it was the left or the right button of the mouse thatwas clicked. If it was the right, then in step 612, the system will usethe quantity in the R field when it determines the total quantity of theorder in step 614. If the left button was clicked, then in step 616, thesystem determines which quantity description was chosen: Offset, NetPosor an actual number.

If Offset was chosen, then the system, in step 618, will use thequantity in the L field when it determines the total quantity of theorder in step 614. If NetPos was chosen, then the system, in step 620,will determine that the total quantity for the trade order will be thecurrent NetPos value—the net position of the trader in the givencommodity. If an actual number was used as the quantity description,then, in step 622, the system will determine that the total quantity forthe trade order will be the current quantity entered. In step 614, thesystem will determine that the total quantity for the trade order willbe the value of the R field (if step 612 was taken) or the value of theL field (if step 618 was taken), plus all quantities in the market forprices better than or equal to the price in the row clicked. This willadd up the quantities for each order in the market that will fill theorder being entered by the trader (plus the L or R value).

After either steps 614, 622 or 620, the system, in step 624, determineswhich column was clicked, BidQ or AskQ. If AskQ was clicked, then, instep 626, the system sends a sell limit order to the market at the pricecorresponding to the row for the total quantity as already determined.If BidQ was clicked, then, in step 628, the system sends a buy limitorder to the market at the price corresponding to the row for the totalquantity as already determined. The process described above is merelyone embodiment and the present invention is not limited to thisparticular process or to any process.

One commercially available product that incorporates display screens ofthe type illustrated in FIGS. 2 and 3 is sold under the brand nameX_TRADER® by Trading Technologies International, Inc., of Chicago, Ill.Display screens of the type illustrated in FIG. 3 are sometimes referredto herein as MD_TRADER™-style displays. As discussed above, however, thetrading tools of the preferred embodiments can be used with virtuallyany electronic trading application, unless otherwise noted.

Given the foregoing information regarding graphical user interfaces forelectronic trading and their use, a number of trading tools will now bedescribed. One or more of these trading tools may be incorporated into atrading application, for example, to assist the trader and improve theefficiency and timeliness of trading.

Last Traded Quantity Marker

The “Last Traded Quantity Marker,” in accordance with a preferredembodiment, provides an indication of the Last Traded Quantity (LTQ). Ina display that includes dynamic market information that is associatedwith a static price scale, such as the MD_TRADER™-style display, the LTQmarker may move up and down the LTQ column as an associated LTQ pricechanges. One form of a LTQ marker 700 is shown in FIG. 7, where both anumerical value and a color or shading are used. For consecutive tradesat the same price, the LTQ marker 700 may show, for example, either i) acumulative quantity for all consecutive trades at the Last Traded Price,or ii) the quantity of only the most recent trade at the Last TradedPrice. The accumulation of the total quantity for multiple LTQoccurrences is typically gateway (i.e. exchange) dependant. Mostgateways, however, will accumulate the quantity. For gateways that donot accumulate the LTQ, a trading application, such as the applicationprogram interface illustrated in FIG. 1, may convert the LTQ into acumulative indicator, if desired.

Generally, as long as a contract continues to trade at the same specificprice, the LTQ will accumulate. When a contract trades at a new price,the marker may move beside that price and the quantity displayed insidethe indicator box and will reflect the quantity of the last trade only.Should a contract trade at a price where a previous contract traded, theindicator will return to that price level, and the indicator box willagain display the quantity of that last trade only (it will not add thenewly traded quantity to the quantity that was displayed the last timethe marker resided at this price). The indicator, located in the LTQcolumn 702, does not simply display the number of the last tradedquantity. Rather, the marker also, by residing next to the price (in theprice column 704) at which the last contract traded, indicates to theuser the price at which that trade occurred. The LTQ marker 700 ispreferably, but not necessarily, associated with the corresponding lasttraded price 706. It is not necessary that numerical values for a priceor quantity be associated with the marker.

In accordance with a preferred embodiment, therefore, the LTQ marker 700is a visual indicator of the last traded quantity. Any type of markermay be used as long as it may be recognized by the user as an indicatorof quantity. Other indicators, such as color or a graphical indicator,like a sliding scale, thermometer-type scale or speedometer-type scale,may alternatively be used as a marker. The graphical indicators may, butare not required to, include associated numerical values. In furtheralternatives, however, combinations of indicators may be used toillustrate characteristics of an item of interest, like the LTQ. Forexample, the quantity itself may be presented numerically orgraphically, and color may be used with the quantity indicator toillustrate a trend, such as increasing or decreasing volume or rate ofchange in volume, or increasing or decreasing price associated with theLTQ. In addition, although described in the preceding few paragraphs asa marker for the LTQ, these types of markers may alternatively be usedfor any item in the user interface that may be of interest to the user.

In addition, when the user interface is configured to display aconsolidated static price scale, for example as described below underthe heading Consolidation Control Icon, the LTQ cell 708 may besubdivided into price consolidation increments and a LTQ marker may beshown, for example, as a horizontal line, within the correspondingsubdivision of the LTQ cell 708. The position of the graphicalindicator, which in this example is a horizontal line, within the LTQcell 708 provides a visual indication of the price within theconsolidated range at which the last traded quantity changed hands.

Color Coding of Markers

As noted above, items of interest in the user interface may be colorcoded or highlighted using color or gray scale shades. In a preferredembodiment, the user interface is of the type shown in FIG. 3 havingmarket data associated with a static price scale, such as the MD_TRADER™interface, and color is used with the LTQ marker to provide a visualdistinction between, for example, an increase or decrease in the pricevalue associated with the Last Traded Quantity (LTQ) from the pricevalue associated with the previous LTQ. In MD_TRADER™, the LTQ may bepresented as a highlighted cell in the LTQ column 702, as shown in FIG.7, which is displayed at a level that corresponds to the Last TradedPrice (LTP) 706. In a preferred embodiment, the highlighted cell changescolors based on the market's price movements. For example, a LTQ cell710 may be displayed with a background that is one color, such as blue,when the change in price associated with the LTQ is an increase from theprice associated with the previous LTQ 708. Whereas a LTQ cell 712 maybe displayed with a different colored background, such as red, when thechange in price from the previous LTQ 708 decreases.

In addition, color may provide additional information about items ofinterest, like the LTQ. For example, when the commodity at issue has yetto have been traded during that current trading session, the LTQ column702 may be shown in a particular color, such as gray, and may remainthat color until a quantity has been filled. When a quantity has beenfilled, the cell displaying the first LTQ for that session may behighlighted in a particular color, such as green, signifying neither anup nor down tick from the previous LTQ. Subsequent fills will result inthe LTQ cell being highlighted, for the preceding examples, in either ablue or a red color, unless the price level does not change from onetrade to another, in which case the cell will remain green until thereis a change in the price of the LTQ.

This benefits a trader in that the display of, and the colordesignation(s) for, the LTQ provides a visual reference of the market'sprice movements, status or trends, thereby permitting a trader toquickly absorb additional information, such as the direction of themarket's activity. As a result of seeing the changes in the price of thelast traded quantities, a trader can more easily determine market statusand trends, thereby enhancing the likelihood of the trader enteringorders and having those orders filled at desirable prices.

The color-coding of the LTQ appears as a colored cell (e.g., 700, 708and 710) in the LTQ column 702 and corresponds to the price row of thattraded quantity. By default in one preferred embodiment, the coloredcell will appear in blue when the LTQ ticks upward in price from theprevious LTQ, will appear in red for instances when the LTQ ticksdownward in price from the previous LTQ, and will appear in green forinstances when the price level remains the same from one trade to thenext. While these preferred colors are the default settings in oneembodiment, the trading application preferably allows a trader to changecolor designations in accordance with the trader's own preferences. Inaddition, while certain embodiments have been described with referenceto color being applied to a cell, the invention is not limited toembodiments in which color is applied to a cell. For example, color maybe applied to any graphical indicator, such as the horizontal line usedas a LTQ marker in the preceding section, to illustrate a property ofthe item of interest.

Overlay of Different Price Feeds

In one embodiment, the trading application provides an “Overlay ofDifferent Price Feeds.” The trading application may be X_TRADER®,referenced above, or any other commercially available product adapted asdescribed herein. In many instances a particular commodity is onlytraded at a particular exchange. In other instances, however, acommodity may be traded at multiple exchanges. This is one instance whena user may be interested in simultaneous information from differentprice feeds, i.e. feeds from different exchanges in regard to aparticular commodity. As another example, Eurex offers both an insidemarket stream and a market depth stream. Generally, the inside marketstream is faster than the market depth stream. In accordance with apreferred embodiment, the different streams, whether from a singleexchange or multiple exchanges, are used by the trading application topopulate and display information about the commodity in a tradingwindow.

A number of exchanges offer multiple price streams, but these exchangesoften supply only those feeds that are requested by the trader. Eachtrader may request, for example, a stream of all of the quantitiescurrently available in the market for a specific commodity, known asmarket depth, or the trader may request to receive only the insidemarket prices, where the inside market is the highest buy price and thelowest sell price at which there is quantity available for thatcommodity. This is also known as the best buy and best sell prices. Manytraders are focused on these best prices, and therefore do not desire astream of a market's depth. Thus, several exchanges cater to userpreferences by offering different price feeds, while also benefiting bysaving on bandwidth for traders who wish to receive only an insidemarket stream.

When using the ‘overlay’ feature, the system preferably displays all ofthe information that it receives, and the display continuously updatesthe cells. By accepting, or having the ability to accept, multiple feedsor streams, the trader is provided with greater security in knowing thatif one feed should become slower or unavailable, the other feed willcontinue to update market information.

FIGS. 8 and 9 show a network 800 for the transfer of data from anexchange 802 to the client terminal 804 via parallel feeds carrying afirst and a second price packet 806 and 808, respectively, through arouter 810 and a Gateway 812. The client terminal 804 is running atrading application, such as X_TRADER®, which presents data carried bythe feeds to a user. When a disruption in one of the feeds, referred toas a “hiccup” or lost data, occurs in the network, as shown at 814 inFIG. 9, packets from the top feed are prevented from feeding into thetrader's display. A disruption, as the term is used herein, is notlimited to a situation in which data is permanently lost, but rather isused generically to also cover instances when data is corrupted, slow orotherwise delayed. Without an auxiliary feed in instances of lost data,the display would be void of prices, and opportunities for trading couldbe lost. Without an auxiliary feed in instances of slow or delayed data,trading decisions would be made based on out of date information.

Although illustrated as a disruption 814 occurring between the gateway812 and the client terminal 804, the feed may be disrupted at any pointfrom the exchange 802 to the client terminal 804. Because of theparallel feed, the display of current information is not interrupted,regardless of the cause of the disruption. Moreover, the parallel feedallows the user to take advantage of speed differences between two feedsand displays the best available information to the user. It should benoted that, although the streams are illustrated as originating from oneexchange 802, the streams may alternatively originate at differentexchanges. In addition, while two feeds are typically sufficient, thepreferred embodiments are not so limited, and information from more thantwo feeds may be simultaneously displayed.

In one embodiment of the invention, the ‘Overlay Different Price Feeds’can be enabled or disabled by adding or removing a check in a ‘UseInside Market Prices’ box in the a Properties dialog box. Othertechniques for enabling this feature may alternatively be used. Wheremultiple feeds are being monitored and displayed, the tradingapplication may provide the user with options for deciding which feed'sdata will be displayed in instances where the data from the feeds is notthe same. For example, in instances where the feeds originate atdifferent exchanges, the user may choose to display the best prices fromthe different feeds. As a further example, where the feeds originate atthe same exchange, information from the most recent packet may bedisplayed, regardless of which feed carried the last displayed packet.Other alternatives will be apparent upon reviewing the foregoing.

Display of Aggregated Working Quantities

Another preferred embodiment provides a trader with a display of theaggregated quantities being worked in the market for a trader's buy andsell orders. A trader's total working quantities represent the totalunfilled quantities of all the orders that the trader currently hasentered but have yet to be filled in the market. For example, thetrading application may display the total working buy quantities and thetotal working sell quantities for the specific commodity being tradedand for the specific trader who entered those quantities in the market.FIG. 10 shows, as an example, a display for a trader who has separateworking sell quantities of 14, 13, and 1 (at 1000), and separate workingbuy quantities of 5, 1, 15, 3, and 1 (at 1002). While this exampleutilizes an MD_TRADER™-style trading interface, any type of tradinginterface may alternatively be used. The trading application calculatesthe sum of the trader's working sell quantities (14+13+1=28) and the sumof the trader's working buy quantities (5+1+15+3+1=25) and, in thisexample, displays the aggregated quantities in cells 1004. Theaggregated working quantities may be displayed in any manner or locationthat is helpful to the user. In another variation of this embodiment,the user may click directly on either the aggregated buy or sellquantity display cells to delete the working quantities displayed inthose cells.

The display of a trader's aggregated working quantities in cells 1004benefits a trader in that it provides the total exposure from thetrader's working quantities. Although the display is dynamic, in thatorder quantities are continuously updated as new orders are entered andothers are filled, the display of quantities at different market pricesis limited by the size of the display screen. Thus, it is possible for atrader to have working quantities of which the trader is not aware atprices that are not visible in the display window. The aggregatedworking quantities display helps to alleviate this drawback by showing atrader the cumulative total of the trader's buy and sell workingquantity. If the display shows anything but a zero, the trader will knowthat the trader currently has an unfilled working quantity in themarket.

In the preferred embodiment, the display of aggregated workingquantities, as shown in cells 1004 in FIG. 10, is presented to the userin conjunction with buttons that may be actuated by the user. As notedabove, the user may use an input device, such as a mouse, to click thebuttons 1006, 1008, thereby deleting the working orders associated withthe displayed aggregated working quantities. One button 1006 displaysthe aggregated buy working quantity. The other button 1008 displays theaggregated sell working quantity. The aggregated totals that appear oneach button 1006, 1008 are calculated from the non-aggregated workingquantities as displayed in a working quantities column 1010, as shown inFIG. 10. In both the working quantities column 1010 and the aggregatedquantity buttons 1006, 1008, the buy quantity is highlighted, in apreferred embodiment in a color, such as blue, and the sell quantity ishighlighted, in a preferred embodiment in a different color, such asred. The user preferably has the option of whether to display theaggregated quantity buttons via, for example in MD_TRADER™, theproperties settings window. The quantity buttons appear by default fornew sessions. Of course, aggregated working quantities may be displayedby any trading application, as an alternative to the type of displayillustrated in FIG. 10.

Dynamic Indicator

Another preferred embodiment provides the user with the ability to pastea dynamic indicator for display in relation to, for example, a staticprice scale. In one embodiment, a first dynamic indicator column isdisplayed adjacent to the bid quantity column, and a second dynamicindicator column is displayed adjacent to the ask quantity column. Thedynamic indicator may be applied to a dynamic indicator column from aspreadsheet, such as Microsoft EXCEL, or other third party charting oranalytical software, to furnish the user with a visual indicator of, forexample, a specific price. The display screen may, for example, be anMD_TRADER™-style display generated by the X_TRADER® trading application,although other trading applications and trading interfaces mayalternatively be used.

The dynamic indicator is preferably associated with market information.In a preferred embodiment, the dynamic indicator is associated with aprice, although it may alternatively be associated with any other itemof interest to the user. Color coding may be applied to the dynamicindicator.

When used, for example, with an MD_TRADER™-style display, a dynamicindicator may be associated with a specific price, as set by a traderusing the third party software, and displayed in relation to a staticprice scale. If the dynamic indicator is associated with a price that isoutside of the viewable area of the trader's display, it preferablybecomes viewable on the screen when the associated price comes intoview. Although a preferred embodiment of the invention involves copyingand pasting to and from a spreadsheet, other methods of transferringinformation may also be used.

Use of this particular embodiment is initiated when a trader enters orpastes a value into a spreadsheet 1100. For example, the value may be aspecific price that the trader wants to monitor, or it may be a dynamicprice that includes an attached calculation. The indicator is notlimited to use with prices, but alternatively may be used for any itemof interest on the trader's display. In the price example, once thevalue is entered in the spreadsheet, the trader copies the desired pricecell(s) from the spreadsheet and pastes the cell(s) in one of thedynamic indicator columns 1102 of the screen, as shown in FIG. 11A. Uponpasting the cell(s) in the dynamic indicator column, a display marker,also referred to as a dynamic indicator 1104, highlights a cell in theindicator column 1102 that corresponds to the price calculated in thespreadsheet or other software.

The marker may be anything that is suitable to serve as an indicator forthe trader, including, for example, graphical symbols and colors. Thus,although FIG. 11A shows an entire highlighted cell 1104, the marker mayalternatively be color-based, such as a highlighted or coloredforeground, background, border or portion of the cell. It is notnecessary that the dynamic indicator occupy an entire cell. For example,in instances where the trading interface includes a static price scale,and the price scale is consolidated, it may be desirable to locate thedynamic indicator at a position within a cell that corresponds to aspecific price. In addition, the marker may mark a range of prices.Preferably, the type of marker is selectable by the user.

Preferably, a link is established from the pasted cell to thespreadsheet 1100 from which the cell(s) was copied. The link gives thetrader the ability to change the copied value in the spreadsheet 1100,resulting in a related change in the pasted value in the dynamicindicator column 1102. In one embodiment, this may be a two-way linkbetween the trading interface and the third party software, or may linkmarket data from the trading window, such as LTP or any other item ofinterest, into the spreadsheet or other third party software. Anysuitable type of data exchange protocol may be used to embed informationfrom the third party software or to link the dynamic indicator to thethird party software. For example, Microsoft OLE 2.0 may be used toperform these functions when using Microsoft Windows applications as thethird party software. In a preferred embodiment, Microsoft OLE isutilized to provide a link between a dynamic indicator and a cell from aMicrosoft EXCEL spreadsheet. Data exchange protocols in general, andlinking and embedding techniques in particular, are well known to thoseskilled in the art.

The meaning of the pasted dynamic indicator, and whether there is adynamic calculation attached, is preferably at the decision of theindividual trader. For example, the trader may want the dynamicindicator to represent a ‘Fair Value Analysis’ (average price). Thiswould calculate the average price at which the specific commodity tradedthroughout the day. The trader would copy and paste the cell, with theattached calculation, into the dynamic display column. As the averageprice changed with each newly filled quantity, the dynamic indicatorwould move up or down the indicator column in conjunction with theappropriate price. When that indicator would move to a price viewable onthe screen, the trader then could see a visual indicator of the ‘FairValue’ price, and the trader could choose to enter quantity if thetrader so desired. Although illustrated with reference to the ‘FairValue’ price, it is to be appreciated that any calculation mayalternatively be used.

As noted above, the dynamic indicator may also appear in only a portionof the cell. The dynamic indicator may be highlighted, for example, in adifferent color than the remainder of the cell or the surrounding cells,or may be displayed in time-alternating colors to create a flashingeffect. The dynamic indicator may be presented as a highlighted orcolored line within a cell. The portion of the cell in which the dynamicindicator appears may be selected to convey additional information, suchas a price that falls between prices in a static price scale, forexample when price consolidation is utilized. FIG. 11B illustrates adynamic indicator column 1102 in which a dynamic indicator is shown byhighlighting only a portion of a cell 1110.

The dynamic indicator benefits a trader in that the trader is provided,for example, with the ability to monitor price movements of the trader'sown designation, whether those movements are of the last traded price,the ‘Fair Value’, or any other designated item of interest. By seeingthe visible dynamic indicator associated with the trader's designateditem of interest, the trader has a better opportunity to enterquantities at prices that are desirable. In addition, the trader canpaste a dynamic indicator while continuing to enter other quantitiesthroughout the trading session, and the indicator will continue toupdate as long as the session is open. Thus, the trader may find that adesirable price, as shown by the indicator, is available in the marketlong after the trader originally copied and pasted the indictor.Furthermore, the dynamic indicator may decrease the time it takes forthe user to analyze market data by providing the user with a visual cue.

The display of the highlighted dynamic indicator, the color of which, ininstances where color is used, may be selected by the trader through,for example, a properties window, appears in the buy and/or sell dynamicindicator columns on the display. The indicators can be moved to variouslocations on the display. Of course, more than one dynamic indicator mayappear in any dynamic indicator column. In one embodiment that utilizesthe MD_TRADER™-style display, the dynamic indicator columns appear bydefault to the immediate left and right of the buy and sell quantitycolumns, respectively, as shown in FIG. 11A. It is not necessary,however, that an entire column, row or other display element be devotedto display of a dynamic indicator. The dynamic indicator mayalternatively be applied in the display on a cell-by-cell basis or mayoverlay other displayed information.

Out of Range Indicator

In accordance with a preferred embodiment, the graphical user interfacefor a trading application provides an indication that an item ofinterest is outside the viewable range of the display. The tradingapplication may be X_TRADER®, referenced above, or any othercommercially available product adapted as described in this section.Preferably, the out of range indicator also provides a user the abilityto cause the display to shift up or down so that the user may view theitem(s) of interest that lie outside of the viewable area. Examples ofitems of interest include, but are not limited to, the user's workingorders and market depth information, such as quantities and prices.

In one embodiment, the out of range indicator is an arrow or similarpointing icon, which will indicate to the user that an item of interestlies outside the viewable area and further indicates the direction inwhich the viewable area needs to move to display the item of interest.Preferably, the viewable area will scroll or jump to the item ofinterest when the user clicks on or otherwise actuates the pointingicon. Each time the out of range indicator is used, the display mayshift to the closest item of interest outside of the viewable area. Asan alternative to jumping to the next item of interest, the display mayshift row-by-row, column-by-column, price-by-price, or may jump to a newlevel based upon a selected item of interest.

For example, as shown in FIG. 12A, quantities are entered (and areviewable on the display) at sell prices of 109225, 109250, 109400, etc.If 109525 is the next highest price for which quantity is entered, butthat quantity is beyond the viewable area, the trader can use an out ofrange quantity indicator, illustrated in this example as an ‘up arrow’1200 function, to shift the display up so that the quantity is viewable.Each ensuing use of the ‘up arrow’ 1200 function will result in thedisplay of the next highest sell price for which quantity is entered inthe market.

Continuing with this example, the same general principles apply whenemploying the ‘down arrow’ 1202 function. Specifically, in FIG. 12A,quantities are viewable on the trading screen at the buy prices of108975, 108875, 108825, etc. If 108650 is the next lowest buy price forwhich quantity is entered in the market, then the trader could use the‘down arrow’ 1202 function to display that quantity. Each ensuing use ofthe ‘down arrow’ 1202 function results in the display of the next lowestbuy price for which quantity was entered in the market.

By using the out of range indicator (e.g., 1200, 1202), which in thisexample indicates out of range market quantities, the trader canessentially view the entire market depth provided by an exchange. Thedisplay of the entire market depth may be limited, for example, by thesize of the user's display screen, or the user's preferences about theamount of market information that is displayed at any one time. Due tothese constraints, it is possible that there may be items of interest,such as market depth or working orders, that the user cannot see. Theout of range indicator not only alerts the user to the existence of anout of range item of interest, but also ensures that all suchinformation is viewable via, for example, the ‘up arrow’ 1200 and ‘downarrow’ 1202 function.

When items of interest fall outside the viewable range, the tradingapplication preferably generates cells, for example each with an arrowpointing up or down, as appropriate, at the top and/or bottom of thecolumn related to the item of interest. The arrow cells are preferablyenabled only when an item of interest, like a quantity entered in themarket, falls outside of the viewable area. If no items of interest falloutside the viewable area, in one embodiment of the invention, the cellsare inactive and may be presented on the display in a solid colorwithout an arrow. As an alternative to the use of buttons with pointingicons, a preferred embodiment allows a user to scroll the market data ina desired direction using a mouse wheel or other user input device.

As noted above, the out of range indicator may alternatively, or inaddition, be used to alert the user to out of range working orders. Inthis example, each time the indicator is used, the display preferablyshifts to the user's next working order in the market that is outside ofthe viewable area. For example, as shown in FIG. 12B and evidenced bythe working quantities present in the working quantities column, atrader has quantities entered (and viewable on the display) at sell oroffer prices of 109200, 109250, and 109300. If 109550 is that trader'snext highest price for which quantity is entered, but that quantity isbeyond the viewable area, the trader can use the indicator, in thisexample an ‘up offer arrow’ 1204 function, to shift the display up sothat the quantity is viewable. Each ensuing use of the ‘up offer arrow’1204 function results in the display of the trader's next highest offerprice for which quantity is entered in the market. As stated above, thedisplay alternatively may shift row-by-row, column-by-column,price-by-price, or may jump to a new level based upon a selected item ofinterest.

The same general principles may apply in regard to working buy orders,by employing a ‘down bid arrow’ 1206 function. For example, in FIG. 11Bthe trader has quantities entered and viewable on the trading screen atthe buy or bid prices of 109025, 109000, 108975, 108875, and 108825. If108650 is that trader's next lowest bid price for which quantity isentered in the market, then the trader could use the ‘down bid arrow’1206 function to display that quantity. Each ensuing use of the ‘downbid arrow’ 1206 function results in the display of that trader's nextlowest bid price for which the trader has quantity entered in themarket. Regardless of which arrow is being used, the screen will shiftto quantities that the trader has entered in the market.

By using the out of range indicator (e.g., 1200, 1202, 1204 and 1206),the trader preferably may view information related to all of his or herworking orders. This indicator reduces the potential for missed andforgotten opportunities or exposure by ensuring that all of the user'sworking orders are viewable via the ‘up offer arrow’, the ‘up bidarrow’, the ‘down offer arrow’ and ‘down bid arrow’ functions. Thepointing icons, or arrow buttons, discussed above may be located at thetop and/or bottom of any column of interest, or to the left and/or rightside of any row of interest, that includes data that falls outside ofthe viewable range, including for example working orders that falloutside the viewable range. Other uses for the out of range indicatorwill be apparent to those skilled in the art upon reviewing thisdetailed description. Although described above with reference topointing icons and/or arrow buttons, any type of indicator mayalternatively be used as long as it is capable of indicating to the userthat there is information outside of the viewable range.

‘Thermometer’ Indicator

In accordance with a preferred embodiment, the trading applicationprovides a display to the user illustrating the volume of buy and sellquantities, in proportion to each other, in a logical, dynamic manner.The trading application may be X_TRADER®, referenced above, or any othercommercially available product adapted as described in this section. Inone embodiment, which is advantageously used in a trading applicationthat displays price along a vertical axis, like X_TRADER®, the‘thermometer’ indicator generates one or more narrow, vertical displaycolumns 1300, 1302 (“thermometers”), located in proximity to thequantity columns as shown in FIGS. 13A & 13B. The thermometers 1300,1302 may or may not be associated with a numeric display of the totalnumber of buy and sell orders in the market for a particular commodity.When there is quantity available in the market, the thermometers 1300,1302 are preferably shaded in a manner that coincides with thepercentage of buy verses sell quantities in the market. For example, ifthe buy and sell quantities in the market are equal, meaning that 50% ofthe quantity is buy quantity and 50% is sell quantity, then boththermometers 1300, 1302 are shaded 50%, as shown in FIG. 13A. Inalternative embodiments, thermometer indicators may represent arelationship between any two items of interest to the user. Althoughvertical bars are shown in the illustrations, it should be understoodthat any visual indicator may alternatively be used, as long as theindicator is capable of conveying the appropriate information to a user.

These thermometer columns are preferably adjustable in that the user maymove the thermometer columns to various locations on the display aslogic or user preference dictate. One preferred location, when thethermometer indicator is to represent the volume of buy quantities inrelation to the volume of sell quantities, is immediately to the left ofthe buy quantity column and to the right of the sell quantity column. Inthis embodiment, the display of the thermometers may begin at themid-point of the prices displayed on the screen. For example, in FIGS.13A and 13B, the mid-point is between the prices of 90 and 85. The buyquantity thermometer descends from the mid-point to the lowest pricedisplayed on the screen (45), and the sell quantity thermometer extendsto the highest price displayed (130).

As noted above, the two thermometers show the quantity available in themarket, with one thermometer each for the buy quantities and the sellquantities. In the illustrated embodiment, both thermometers extend fromthe mid-point price that is currently on the user's display. The buythermometer preferably reaches to the lowest price displayed, while thesell thermometer preferably extends to the highest price displayed. Thethermometer for the buy quantity descends from the top of thethermometer as the percentage of buy quantity increases. The thermometerfor the sell quantity rises from the bottom of the thermometer as thepercentage of sell quantity increases. If either the buy or sellquantity is larger than the other, the thermometers will reflect thisdifference based on the amount of the disparity. FIG. 13B, for example,reflects a scenario where 95% of the quantity in the market is buyquantity and 5% of the quantity in the market is sell quantity.Therefore, the buy thermometer 1304 is shaded a great deal more than thesell thermometer 1306 to represent the disparity. Although describedwith reference to a thermometer indicator, any type of graphicalindicator may alternatively be used to present the user with informationabout an item of interest. An alternative to displaying graphicalindicators, like thermometers, is to display the market depthnumerically, such as an aggregated sell quantity and an aggregated buyquantity, or as a percentage or ratio between buys and sells.

The thermometer indicator benefits a trader by showing the disparity ofbuy verses sell quantity in the market, thereby providing the traderwith a tool to help decide whether to enter orders to buy or sell. Forexample, if there is a higher percentage of buy quantity in the market,then a greater number of the traders may want to buy, whereas if thereis a greater percentage of sell quantity in the market, then a greaternumber of traders may want to sell. A trader can therefore deduce thatwith a greater percentage of buy quantity in the market, the trader mayhave a higher chance of having the trader's sell order filled at adesirable price if the trader were to enter such a sell order. If thepercentage of sell quantity was higher in the market, the trader mayhave a greater chance of having the trader's buy order filled at adesirable price.

Auto Scalper

In accordance with another preferred embodiment, the trading applicationprovides a way to automatically enter offsetting orders. The tradingapplication preferably is X_TRADER®, using an MD_TRADER™-style display.Scalping is a term that is well known in the trading of commodities andit refers to a trading technique in which the trader trades forrelatively smaller gains over a short period of time. In thisembodiment, the trading application facilitates scalping by providingthe user with an automatic order entry mechanism, embodiments of whichare further described below. Preferably, automatic scalping is activatedbased on a user input, such as simultaneously pressing the control keyand the scroll wheel on the user's mouse to manipulate a pair ofindicator bars in the form of horizontal lines. Other actuatingmechanisms may alternatively be used, including for example using adialog box generated by the trading application or by actuating ascalping icon displayed on the user interface.

For this embodiment in which a mouse input is used to position parallelhorizontal lines, the indicator bars define a price range where buy andsell quantities may be automatically entered when a similar suchquantity is manually entered and filled. More specifically, this featureautomatically enters sell quantities when a trader's manually enteredbuy quantity is filled. Likewise, this feature will automatically enterbuy quantities when a trader's manually entered sell quantity is filled.The indicator bars move in relation to a static scale or axisrepresenting prices. In a preferred embodiment, the indicator bars spanthe buy column, the sell column, and the price column, and they begintogether at the mid-point of the prices displayed on the trader'sdisplay screen. In FIG. 14A, that mid-point 1400 is between the pricesof 90 and 85. When the trader enables this embodiment and scrolls thewheel on the trader's mouse up, the indicators move further apart,leaving a greater number of prices within the range of the indicatorbars 1402. When the trader scrolls the wheel down, the indicator barsmove closer together (nearer to the mid-point), reducing the number ofprices within the indicator columns, as shown in FIG. 14B.

The order that is automatically entered is preferably for the samequantity as the trader's last buy or sell fill. Additionally, the orderthat is automatically entered is entered at a particular price orprices, depending on the preferences and/or practices of the trader,within the range of the indicator bars. In one embodiment, the orderthat is automatically entered is, in the case of a sell order, at thelowest price above the inside market within the range of the indicatorbars, and in the case of a buy order, at the lowest price within therange of the indicator bars. Alternatively, the order that isautomatically entered, may be at a price or prices calculated pursuantto any algorithm. For example, the quantity ordered may be evenly spreadamong the prices above (in the case of a sell order) or below (in thecase of a buy order) the inside market and within the range of theindicator bars. The preferred embodiments are not limited to anyparticular technique for determining the price or prices at which theautomatic order is entered. In a preferred embodiment, the user may setthe rules for exactly how a duplicate order or orders are sent (whetherat the best price or some other price).

For example and as shown in FIG. 14A, the indicator bars 1402 are setwith the highest price at 110 and the lowest price at 65. The insidemarket, as indicated by the black line, is a buy price of 100 and a sellprice of 105. If a trader using the automatic scalper enters quantity inthe buy column and that quantity is filled, in one embodiment the systemwill automatically enter a duplicate quantity in the sell column at thelowest price above the inside market and within the range of theindicator bars, which in this example would be a sell price of 105.

A trader's position may be defined as the difference between the totalquantity of the commodities bought and quantity of the commodities sold,and the trader is considered to have a long position when the quantitybought is greater than the quantity sold and a short position when thequantity sold is greater than the quantity bought. The more quantity thetrader owns, the longer the trader's position will be. Conversely, themore quantity the trader sells, the shorter the trader's position willbe. It may be desirable to have neither a long nor short position,referred to as a closed position, at the end of each day's tradingsession. If the buy quantity that the trader has entered in the marketis filled, thus giving the trader a long position, the system, ifactuated by the user, may automatically enter a duplicate sell quantity,which when filled will close the trader's position. Likewise, if thesell quantity that the trader has entered in the market is filled, thesystem may automatically enter a duplicate buy quantity, which whenfilled will close the trader's position. The automatic scalperautomatically and, preferably, immediately enters a duplicate buy orsell quantity, which when filled will close the trader's position,preventing the trader from carrying a long or short position for anextended period of time.

In an alternative embodiment, the automatic scalper embodiment may beused to set one range, using, for example, indicator bars, for buyingquantity and another range for selling quantity, at the same time. Forthis embodiment, the automatic scalper automatically quotes both sides(buy and sell) within the ranges determined by the user. In anotheralternative embodiment, multiple automatic scalping ranges, usingdifferent pairs of indicator bars, may be active in a single tradingwindow. For this embodiment, the different ranges may be distinguishedby using, for example, different colors for the different pairs ofindicator bars.

Price Level Reasonability Check

In accordance with another preferred embodiment, the trading applicationprovides a user with the ability, referred to as the Price LevelReasonability Check (“PLRC”), to prevent the entry of any order in themarket at a price that is a specified number of ticks away from the LastTraded Price (LTP), or at a price that is a specified percentagedifferent from the LTP. A tick can be anything, but is generally used inthis detailed description as the minimum change in a price value that isset by the exchange for each commodity (e.g., $0.01, $0.05, $0.10, orany other value). The trading application may be X_TRADER®, referencedabove, or any other commercially available product adapted as describedin this section. The PLRC may be enabled and configured by either auser, such as a trader or an administrator. For systems in which anadministrator enables the PLRC, the PLRC may be applied uniformly to allclient terminals on a network, or it may be adjusted on a case-by-casebasis, thereby accounting, for example, for the experience level of thetrader.

The PLRC may preferably be enabled on a commodity-by-commodity basis.For example, in FIG. 15A, a trader has entered a value of five todesignate the maximum number of ticks from the LTP at which the traderis willing to enter an order in the market. As shown in FIG. 15B, themarket for the commodity being traded has a tick value of five.Therefore, as dictated by the LTP of 90, the tick increment of five, andthe PLRC value of five, should the trader choose to sell the commodity,the trader can enter an order at a price of 90, 85, 80, 75, 70, and/or65. As shown in FIG. 15B, 90 is the last traded price, and the prices of85, 80, 75, 70, and 65 are the sell prices that are less than or equalto five ticks away from that LTP. If the trader attempts to sellquantity at a price of 60 or below, the trader would be restricted fromdoing so because the price is beyond what the trader's PLRC value willallow. The same trader could buy the commodity at a price of 90, 95,100, 105, 110, and/or 115. Each of these prices is within five ticks(the PLRC value) of the LTP. If a trader attempts to buy quantity at aprice of 120 or higher, the trader would be restricted from doing sobecause the price is beyond what the trader's PLRC value will allow. ThePLRC function may alternatively allow a trader or administrator to entera percentage instead of a number of ticks to designate the maximumdeviation from the LTP at which the user is allowed to enter orders inthe market.

In an alternative embodiment, the trading application may provide avolatility adjusted PLRC function. In this embodiment, the PLRCdynamically increases or decreases the number of ticks (or percentage)away from the LTP within which a user may enter orders. Theincrease/decrease, which may be set by the user or a systemadministrator, is preferably based on volatility. For example, a tradermay set the trading application to dynamically increase the PLRC by aspecified amount if the volatility is greater than a specified amount.

The inclusion of the PLRC function limits the possibility of the traderhaving the working quantity filled at less desirable prices. The insidemarket is those prices, for which there is quantity available in themarket, that are considered the best buy and sell prices available. Thebest buy price is the highest buy price that has quantity in the market,while the best sell price is lowest sell price that has quantity in themarket. Generally, the LTP will be at or near to that inside market. TheLTP is used as the center price from which the PLRC begins and allowsquantity to be entered at a limited number of price levels either aboveor below that LTP level.

In one preferred embodiment, where the trading application is X_TRADER®,the PLRC is preferably enabled through the ‘Options’ display, an exampleof which is shown in FIG. 15B, by checking the “Price LevelReasonability Check” option box 1500 and then entering a value in theadjacent box 1502, designating the number of ticks that quantities canbe filled beyond the last traded price value. Although the PLRC isdescribed with reference to setting a boundary on acceptable prices forworking quantities, the same technique may be used to constrain manyother trading activities, such as the quantity associated with any orderor to limit the total quantity being quoted by any individual user.Implementation of these variations is analogous to the implementation ofPLRC described above and those skilled in the art can implement thevariations based on this detailed description.

Group Positioning and Automatic Grid Positioning

In accordance with another preferred embodiment, the trading applicationmay re-position any item of interest within the trading interface. Inone embodiment, the trading application tracks the market's activity byautomatically centering, for example, the inside market or the LastTraded Price (“LTP”) on the display with respect to a static axis orscale of prices. Preferably, any other item of interest in the tradinginterface may serve as the basis for positioning information within thedisplay.

The trading application preferably is X_TRADER®, using anMD_TRADER™-style display. In a preferred embodiment, the LTP isdisplayed in the LTP column and is indicated by a highlighted celldirectly next to the price cell corresponding to the most recentlyfilled quantity. The LTP cell preferably also contains an indication ofthe quantity of the most recent fill. The inside market is indicated bya line spanning both the buy and sell columns and is positioned betweenthe highest buy price at which there is quantity currently in the market(the best buy price) and the lowest sell price at which there isquantity currently in the market (the best sell price).

Preferably, a user may designate any item of interest as the basis forthe positioning function, such that, upon positioning, the item ofinterest will be moved to a predetermined location on the user'sdisplay. Automatic positioning may be triggered either by a timer, or bymonitoring movement of the item(s) of interest about the display. Twoitems of interest to many traders are the inside market and the LTP.Thus, in one embodiment, the user may select one of these items forautomatic re-positioning. When either the highlighted LTP cell or theinside market line is outside of the viewable area of a trader'sdisplay, or is more than a predetermined distance away from a locationon the display, the LTP cell or the inside market line willautomatically be placed at a predetermined location on the display. In apreferred embodiment, automatic positioning parameters may be selectedby the user from the ‘Options’ display. The user may choose, forexample, whether to re-position the display after a designated number ofseconds, when the LTP is a designated number of cells from the top orbottom of the trader's display screen, or when the inside market is adesignated number of cells from the top or bottom of the trader'sdisplay screen.

In addition, a trading application may present multiple trading windowsto the user simultaneously. In accordance with a preferred embodiment,the automatic positioning tool may be applied globally to any number ofopen trading windows. Preferably, a dialog box or menu item may be usedto enable the user to group or link, for purposes of re-positioning, anynumber of trading windows. In accordance with one embodiment, at leastone of the linked trading windows becomes the master, and the otherlinked trading window(s) will be re-positioned whenever the mastertrading window is re-positioned. For example, one of the trading windowsmay be designated by the user as the master trading window by selecting“re-position all,” or any similar designation, from a menu or dialogbox. This may have the effect of re-positioning all open trading windowswhen the master trading window is re-positioned. The user may choose tohave one or more trading windows ignore the re-positioning command byselecting “ignore,” or any similar designation, from the menu or dialogbox. This group re-positioning feature may be used in conjunction withthe automatic re-positioning tool or with manual re-positioning (such asthrough the click of a center mouse button or the use of any inputdevice). Other techniques for grouping trading windows will be apparentto those skilled in the art upon review of this detailed description.

In a preferred embodiment, the positioning tool serves to center theitem of interest (such as the LTP or the inside market) on the display.As shown in FIG. 16A, the LTP is displayed in the LTP column 1602 and isindicated by a highlighted cell 1600 (the color of which may bedesignated by the trader). This cell 1600 appears next to the price cell1604 corresponding to the most recently filled quantity. The insidemarket is indicated by a solid line spanning both the buy 1608 and sell1610 columns, and is between the highest buy price at which there isquantity currently in the market and the lowest sell price at whichthere is quantity currently in the market. FIG. 16B is a display showinghow a trader may select and manipulate the automatic grid centeringfeature. Although presented in FIGS. 16A and 16B as being applied to ascrolling vertical scale, it should be understood that the preferredembodiments are not so limited. Rather, automatic positioning may beapplied regardless of the direction of movement or the number ofdimensions in which information is displayed.

As quantities are entered and filled in the market, the LTP and insidemarket change to indicate the price of the last filled quantity and themost recent best buy and sell prices. In a volatile market, a largenumber of quantities can be filled in a relatively short period of time,resulting in a continuous fluctuation of the LTP and inside market. TheLTP and the inside market are two indicators that a trader may use tounderstand at what prices other traders find a commodity to be mostdesirable. A trader may use automatic positioning to always have avisual reference of where the market is trading, increasing thelikelihood of entering quantities and having those quantities filled atdesirable prices. In addition, automatic positioning may be used inconjunction with manual positioning. In other words, it is preferablethat by enabling automatic positioning, the user is not therebyprecluded from manually re-positioning the display.

Highlight Mid-Point of Last Re-Position

In accordance with a preferred embodiment, a trader may emphasize themid-point of prices and/or quantities entered in the market at the timeof the last re-position event. Preferably, a re-position event centersthe display around the inside market, where the inside market is thehighest buy price and the lowest sell price for the commodity beingtraded for which there is quantity in the market, or alternatively, are-position event may center the display at any price and/or quantity,if so desired. Furthermore, a re-position event does not need to centeron any particular price, but may ensure that a particular price, orother item of interest, is positioned at a predetermined location, orwithin a range of locations, on the display.

In the preferred embodiment, the mid-point is designated by a bold linethat spans the columns of the display screen, or in another embodiment,the mid-point may be designated by a color, arrow, text, and so forth.Preferably, the exact location of the mid-point line is dependent on thenumber of the price rows that are displayed between the best buy andbest offer price rows (at which quantity is available) at the time ofthe last re-center event. Alternatively, the location of the mid-pointline may be dependent on the quantities of a portion, or all, of the buyand sell orders, or may be dependent on the combination of price andquantities of the portion or all of the buy and sell orders. In yetanother alternative, a bold line representing a particular price levelmay be displayed in association with any item of interest to the user,to thereby adjust the content of the trading interface to the user'spreferred range.

Of course, markers other than a line may alternatively be used. Forexample, like many of the foregoing embodiments, the marker may behighlighting, a color or a graphical indicator disposed upon the displayat the desired location. According to this embodiment, a trader maybenefit from the visual representation of the discrepancy between thebest bid and offer prices currently in the market.

According to the preferred embodiment, when the number of price rowsbetween the best bid and best offer price rows (where quantity isentered) is an even number (or zero), the mid-point line is displayedbetween the middle values, with these being the highest buy (bid) priceand the lowest sell (offer) price that are displayed in the window. Forexample, in FIG. 19A, the best bid price is 75 and the best offer priceis 100. In this example, the display for the product is traded in ticksin increments of 5. As a result, the prices that are displayed betweenthe best bid and best offer prices are 80, 85, 90 and 95. Because thetotal number of prices between the best bid and best offer is an evennumber, the mid-point line 1800 is displayed between the highest bidprice of 85 and the lowest offer price of 90. Other methods mayalternatively be used to determine the mid-point of an even number ofrows, cells or columns.

In addition, according to the preferred embodiment, when the number ofprice rows between the best bid and the best offer prices (wherequantity is entered) is an odd number, the mid-point line is displayedin the top of the cell that signifies the middle price value of theprices displayed between the best bid and best offer prices. Forexample, in FIG. 19B, the best bid price is 85, and the best offer priceis 105. The display for the product being traded ticks in increments of5. As a result, the prices that are displayed between the best bid andthe best offer are 90, 95 and 100. Because the total number of pricesbetween the best bid and best offer is an odd number, the mid-point line1902 is displayed above the price row of 95 because 95 signifies themiddle price value of the prices displayed between the best bid and bestoffer prices. It should be understood that the mid-point line 1902 maybe displayed below or in the middle of the price row of 95 to indicatethe middle price value. Other methods may alternatively be used todetermine the mid-point of an odd number of rows, cells or columns.

While the preferred embodiment utilizes an MD_TRADER™-style display witha vertical static price axis or scale, this trading tool may be utilizedwith any display in which market information, such as bids, asks and/orworking orders, are displayed relative to a static scale or axis ofprices. It is not necessary that the scale or axis be vertical or eventwo-dimensional. Rather, the market information may be displayedhorizontally, at an angle, n-dimensionally, or in any other fashion.

The display of the mid-point line may be enabled through an ‘Options’display, an example of which is shown in FIG. 19C, by clicking the box1906 directly to the left of the ‘Highlight Midpoint of Last Re-center’option. Other techniques known to those skilled in the art, such asselecting this tool from a menu, may alternatively be used. Also,highlighting the mid-point may be applied to a variety of applicationswhere the trader would like to highlight a midpoint that corresponds toprices and/or quantities, or any other item of interest.

Drag and Drop of Working Quantities

In accordance with another preferred embodiment, the trading applicationpermits the trader to change the trader's working orders by dragging anddropping working quantities from one price level to another price levelvis-á-vis a static price scale or axis. The trading applicationpreferably is X_TRADER®, using an MD_TRADER™-style display. When usingan MD_TRADER™-style display to drag and drop a working order, in oneembodiment, the trader clicks on an active cell within the workingquantity column. This activates the drag and drop feature and allows thetrader to manipulate the cell by moving the cell on the trader's tradingscreen. Such a manipulation is commonly referred to as “dragging” thechosen data. Prior to releasing the mouse button, a trader drags theworking order by moving the cursor to a new cell in the working quantitycolumn. The trader then releases or “drops” the data in a new cell. In apreferred embodiment, the ability to drag and drop working orders asdescribed herein is an option that may be turned on or off by the userfor each individual trading window.

At the point the data is dropped, the previous quantity may be deletedfrom the original price and a new quantity entered at the priceassociated with the cell in which the new working quantity was dropped.The quantity displayed in either the buy or sell column that correspondsto the traders working quantity also moves to the newly selected pricelevel when the drag and drop function is performed. Any approach may beused to change the user's working orders. For example, rather thanresulting in the deletion of an existing working order and the entry ofa new working order, a single cancel and replace, as known to thoseskilled in the art, may be used to change the user's working orders.

The ability to drag and drop working quantities, as displayed in theworking quantities column, can be used by a trader who is not satisfiedwith the current price at which such quantity is entered in the market.The trader is given the capability of changing the price level at whichthe trader's quantity is entered without having to both delete andre-enter the quantity, resulting in a valuable time savings by simplydragging and dropping that quantity.

Preferably, the drag and drop feature makes it possible for a trader tomove the entire working quantity of a single cell from one cell toanother cell in the working quantity column when that quantity actuallyconsists of multiple orders. For example, if a trader's working quantityis 30 at the price of 102.54 (1700), as shown in FIG. 17, that quantitymay actually consist of three separate 10-lot orders, where a lotconsists of multiple quantities that are traded together. Should thetrader drag and drop that working quantity to the price of 102.57, theentire quantity of 30 (all three lots) will move cohesively to the newprice level. Although the quantities were entered separately, onceentered, they are treated as a cohesive whole.

The ability to drag and drop an entire quantity, regardless of thenumber of orders associated with that quantity, benefits a trader inthat the trader does not need to constantly change the trader's quantitysetting. The trader also does not have to repeat the drag and dropaction for each order. For example, a trader may be trading at aquantity of 10, and therefore every time the trader enters a quantity inthe market, the trader is entering a 10-lot order. If the trader wantsto enter a quantity of 30, the trader can either change the quantitysetting or click in the appropriate cell three times, thus enteringthree separate 10-lot orders in the market. Should the trader choose todrag and drop the working quantity from one price level to another, allof the working quantity associated with the cell and price level atwhich the drag and drop is performed will be moved to the new pricelevel. As a result, the trader does not have to perform three separatedrag and drop actions and valuable time can be saved, which could helpto ensure that the quantities are entered and filled at their intendedprices.

The display of a trader's working quantity appears in the workingquantity column in a cell that corresponds to the price at which thequantity was entered. The display of the trader's working quantityremains visible on the trading screen until the quantity entered iscompletely filled, at which time the display of that specific workingquantity will be removed from the working quantity column, or the orderis canceled or deleted. In one embodiment of the invention, the cell inwhich the working quantity is displayed includes a ‘W’ followed by avalue that indicates the quantity that is currently working in themarket. The cell also contains a ‘B’ or an ‘S’ followed by a value thatindicates how much of the original working Buy or Sell quantity has beenbought or sold. Although described with reference to a working quantitycolumn, the embodiments are not limited to trading interfaces thatdisplay working quantities in a column, but rather the teachings of thissection may be applied to any type of display of working quantities.

In one preferred embodiment of drag and drop, nothing changes withrespect to a user's pending working orders until the user releases themouse button, keypad or other input device over the desired location onthe trading interface. This feature allows the user to maintain his/herplace in the trading queue for the earlier entered order. In analternative embodiment, the new order is entered as soon as the mouseicon comes to rest in an appropriate area of the trading interface.

Another alternative embodiment allows drag and drop of workingquantities when price consolidation is enabled. Any appropriatealgorithm may be used to allocate the new order(s) over the consolidatedprice range. For this embodiment, the user preferably may select, suchas through the use of a dialog box, the desired allocation algorithm.For example, all the “dropped” orders may be entered at one price, suchas the price shown on the consolidated scale, or the working quantitymay be equally distributed over the consolidation range associated withthe location where the orders are dropped, or each working order may bemoved by the increment on the consolidated price scale between theiroriginal location and the location at which the orders are dropped.

Yet another alternative provides a user with the ability to enableautomatic modification of the quantity of the order entered at thelocation where the working order is dropped. For example, as notedabove, working orders may remain working until the input device (e.g.mouse button) is released. In this case, a working order may be filledor partially filled during the drag and drop process. Preferably, theuser may select, such as through a dialog box, what will happen to the“dropped” order in this situation. For example, if the working order isfilled during drag and drop, the user may prefer that no new order beentered at the new price. Or, if the working quantity is partiallyfilled, the user may prefer that only the remaining quantity be enteredat the new price. In this manner, the “dropped” order may beautomatically modified in accordance with user preference.

Average Price of Working Quantities

In accordance with a preferred embodiment, a display shows the averageprice for a trader's working buy and sell quantities that are entered inthe market. A trader's working quantities represent the unfilledquantities of all the orders that the trader currently has entered, butnot filled in the market. Preferably, the display shows the averageprice of the total working buy quantities and the average price of thetotal working sell quantities for the specific commodity being tradedand for the specific trader who entered those quantities. For thisembodiment, the average working prices may be displayed using, forexample, highlighting, color, or a graphical indicator associated with astatic price scale or axis, if such a scale or axis is displayed. Thedisplay may or may not include the actual numerical value of the averageprice.

In an alternate embodiment, a distribution of the prices for thetrader's working buy and/or sell quantities that are entered in themarket is displayed. In this alternative embodiment, the average pricemight also be displayed in or around the displayed distribution of theprices. It should also be understood that the average price and/or thedistribution of prices may be displayed in a text format, displayed in acolor format (e.g., a color indicator), displayed in a graphical format(e.g., using text and color), and so on.

For example, FIG. 18 shows a screen for a trader who has two working buyquantities at the market price of 96, eight working buy quantities at aprice of 95, and two working buy quantities at a price of 94 (1800).Preferably, the average price of those working buy quantities iscalculated by dividing the total price of the working quantities fromthe sum of the quantities and that average will be displayed asdescribed below. In the preferred embodiment, the average price of theworking buy quantities is calculated as follows (although, the averageprice may be calculated using other known types of statistical and/ornumerical analysis):

Total Price of Working Buy Quantities/Total Buy Quantity=Average Priceof Working Buy Quantities:

((2×96)+(8×95)±(2×94))/(2+8+2)=95

(192+760+188)/12=95

1140/12=95

Preferably, the same calculation is utilized to determine the averageprice of the working sell quantities. Using the illustration from theexample above, FIG. 18 also shows a screen for a trader who has fourseparate working sell quantities at the market price of 101, two workingsell quantities at a price of 100, and four working sell quantities at aprice of 99 (1802). The average price of the working sell quantities aredisplayed as described herein and that price is calculated as follows:

Total Price of Working Sell Quantities/Total Sell Quantity=Average Priceof Working Sell Quantities:

((4×101)+(2×100)+(4+99))/(4+2+4)=100

(404+200+396)/10=100

3005/10=100

Preferably, the calculation of the average price of the workingquantities is on a contract-to-contract basis, meaning that separateaverage prices are calculated and displayed for each separate commodityin which the trader has working quantity entered.

Preferably, the display of the average price and/or distribution ofprices of a trader's working buy and sell quantities can be used tocompare the trader's average price against all other current buy andsell quantities entered in the market for the commodity. This functioncan benefit a trader by helping to ensure that the trader is trading atthe most desirable prices.

In the preferred embodiment, the display of the average price for atrader's working quantities appears as two separate cells within thedisplay—one displaying the average buy price 1804 of the trader'sworking sell quantities and the other the average sell price 1806 of thetrader's working buy quantities. In the preferred embodiment, theaverage buy price is displayed at the bottom of the working quantitiescolumn and the average sell price 1806 is displayed at the top of thatcolumn, as shown in FIG. 18. Moreover, in the preferred embodiment, theprice in the average sell price cell is highlighted in red and the pricein the average buy price cell is highlighted in blue. Although, itshould be understood that the average sell price and the average buyprice can be displayed anywhere on the screen, and the average sellprice and average buy price may be displayed textually, in any color,both textually and in a color, and so forth.

Coding of Blank Spots

In accordance with a preferred embodiment, cells in the buy and sellcolumns of the display that correspond to prices at which there is noquantity entered in the market are visually distinguished from thosecells at which such quantity is entered. The buy and sell price levelsfor which there is not corresponding quantities are designated as “blankspots” 2000, and in the preferred embodiment appear in a different shadethan populated cells as a means of providing a better visualrepresentation of where the market is trading, as shown in FIG. 20A. Theblank spots 2000 may appear in a lighter shade or darker shade thanpopulated cells, a different color, or a different texture such ashatching from those cells where there is quantity entered. Preferably,as new quantities are entered into the market, and existing quantitiesare filled and removed from the market, the blank spots 2000 changeaccordingly. In addition, it is preferable that the user be able toselect the manner in which blank spots are displayed.

According to an embodiment, a trader may benefit in that the visualdifference between buy and sell cells that contain quantity, versesthose that do not contain quantity, makes it easier for the trader toquickly recognize whether quantities are available in the market at aparticular price. Thus, a trader interested in buying quantity has anenhanced display of where such quantity is available, and a traderinterested in selling quantity can more easily gauge where other tradersare selling the commodity.

In the preferred embodiment, color coding may appear in the buy and sellcolumns of the display at price levels at which there is no quantitycurrently in the market. The buy and sell cells that correspond to theseprice levels appear in a visually different manner than those cells atwhich such quantity is entered. Color coding may be enabled through a‘Color Code Blank Spots’ field of an ‘Options” display, shown in FIG.20B, by checking the box 2002 immediately to the left of the blank spotsoption.

In another preferred embodiment, color coding and/or shading may beapplied not only to cells without quantity, but also to cells in whichthe quantity falls below a threshold. Preferably, the threshold may beset by a user or an administrator. In addition, the user may setdifferent thresholds either within one trading window or across multipletrading windows. When different threshold levels are utilized, it ispreferable that each threshold value be assigned a distinct color sothat the user may quickly recognize the meaning of the color coding.

Display of Net Price of Open Position

In accordance with a preferred embodiment, a trader is provided with adisplay of the net price of the working buy and sell orders. A visualindicator such as text, color, a combination of text and color, or agraphical indicator is used to highlight to the trader the net price ofworking buy and sell orders. The graphical indicator may take any form,including a line or even a colored pixel.

In one embodiment, it may be useful to display the net price openposition, where a position is the difference between the number oforders bought (a long position) and the number of orders sold (a shortposition). A trader's position is open when the number of orders boughtor sold is not equal. If these orders are equal, the trader's positionis considered closed. When orders are traded on an exchange, it ispossible for a trader to receive multiple fills, for multiplequantities, and at different price levels for the quantities that makeup the trader's orders. This feature incorporates the price levels ofthese multiple fills to determine the net price at which the fillsoccurred. The trader can then use this net price to gauge whethertrading out of a position would result in a realized gain, loss, orscratch (neither a gain nor a loss).

To determine the net price of a trader's open position, this embodimentdivides the total price of the quantity that has been filled by thetotal number of orders either bought or sold (a.k.a. the trader'scurrent position). For example, a trader who purchased 10 contracts of acommodity (4@ 99, 2@ 100, and 4@101) would have a long 10 position,meaning that the trader would need to sell 10 contracts in order toclose the trader's position. The net price of the trader's filledquantity would be 100, and would calculated as follows:

Total price of Filled Quantity/Current Position=Net Price of the OpenPosition

(4@99+2@100+4@101)/10=100

(396=200=404)/10=100

(1000)/10=100

Based on the calculation above, the value of 100 is displayed as thetrader's net price of the trader's open position. The net price can bedisplayed in one of several manners, which include, without limitation,a box 2100 around the net price's price level cell as shown in FIG. 21,a separate column for the display of the net price, a box across the netprice's price level, or a distinguishing color for the net price. If aparticular trader has a long position as the result of buying quantity,any additional quantity that is bought will cause the net price of thetrader's open position to be re-calculated. Preferably, should thattrader sell quantity, the trader's position will change but the netprice that is displayed will remain constant. Any additional buyquantity will subsequently change both the trader's position and the netprice of that position, while all subsequent sell quantity will adjustthe trader's position only, and will do so only until the position isclosed. Should a trader begin a trading session with a short position asa result having the sell quantity(s) filled, all of the trader'ssubsequent sell quantity will change both the position and the net priceof the trader's open position when such sell quantity is filled. Any buyquantity that has been filled will not change the net price, but willinstead affect only the position and only until that position has beenclosed. As a result, it will be easier for a trader to gauge where (atwhat price) the trader needs to buy or sell when the net price of thetrader's long position is only allowed to increase as the positionincreases and the net price of the short position is only allowedincrease as the position becomes shorter.

A trader may benefit in that the visual representation of the net priceof the trader's open position reduces or eliminates the need to mentallycalculate such a price when, depending on the market's volatility, theprice may change repeatedly. A trader who has had consecutive buyquantities filled will have a long position and will see a displaysignifying the net price of that long position. Any sell quantities thatare filled will not be calculated into that net price. Likewise, atrader who has consecutive sell quantities filled will have a shortposition and will see a display signifying the net price of that shortposition. Any buy quantities that are filled will not be calculated intothat net price. The trader benefits from such a feature in that thetrader will always have a display of the net price of the trader'sprimary position (either of all of the trader's buy quantities or all ofthe trader's sell quantities), which will therefore provide the traderwith a better indication of the price level at which the trader needs tobuy or sell additional quantities to make a profit and close theposition. Alternatively, the average price of the trader's open positionmay be calculated based upon both buy and sell orders filled.

The marker indicating the net price may be anything that is suitable toserve as an indicator for the trader, including, for example, graphicalsymbols, numbers and/or colors. Thus, although FIG. 21 shows a cell 2100surrounded by a colored, shaded or highlighted box, the marker mayalternatively be graphical, or numerically displayed elsewhere on theuser interface. It is not necessary that the marker occupy an entirecell. For example, in instances where the trading interface includes astatic price scale, and the price scale is consolidated, it may bedesirable to locate the marker at a position within a cell thatcorresponds to a specific price. Preferably, the type of marker isselectable by the user.

Consolidation Control Icon

In accordance with a preferred embodiment, a trader may consolidateprice information, or other useful information, by a control icon thatis displayed to the user on the same interface that is used for trading.Consolidation of price information is described in U.S. patentapplication Ser. No. 09/971,087, incorporated above. In the embodimentdescribed herein, the control icon is preferably presented to the useron the same screen that is used for trading, thereby allowing the userto maintain his or her view of the market information as the controlicon is adjusted.

In a preferred embodiment, the control icon is a slide control 2200,shown in FIG. 22, which can be dragged from left-to-right orright-to-left, but in alternate embodiments may include a dial that canbe turned in the clockwise or counter-clockwise direction or any othercontrol icon that may be actuated through the graphical user interfaceof the trading application. According to the preferred embodiment whereprice information may be consolidated through the slide control 2200,when the slide control 2200 is dragged to the far left, the displaypresents numbers in a one-tick, or uncompressed, progression. Priceinformation may also be displayed in another manner besides ticks (suchas currency), depending on the manner in which each exchange providesthe price information and user's preferences. As the slide control 2200is moved to the right, the control consolidates the prices and any otherassociated values (e.g., bid/ask quantities, working orders, etc.),thereby displaying values that become progressively more consolidatedthe further the slide control 2200 is moved to the right, and resultingin the display of prices in multiples of ticks. Preferably, eachincrement of the control icon may be selected by the user, such asthrough a dialog box or any other means known to those skilled in theart.

Although described with reference to a vertical price scale that issubject to consolidation, the preferred embodiments are not limited toconsolidating a price scale, nor are they limited to consolidating avertical display element. Rather, any numerical sequence is subject toconsolidation, regardless of its orientation or number of dimensions.The preferred embodiments allow user selectable consolidation through anicon presented on the user interface.

The consolidation of price information by adjusting a control iconbenefits a trader in that it quickly allows for a greater number ofprices and/or associated values such as bid/ask quantities and workingorders to be displayed at any given time. Thus, a trader has a greaterchance of not only seeing a majority, if not all, of the quantityentered at those prices, but the trader also has a greater spectrum ofprices in which to enter the trader's own quantities.

CONCLUSION

It should be understood that the above description of the preferredembodiments, alternative embodiments, and specific examples are given byway of illustration and not limitation. For example, the featuresdescribed herein could be incorporated into a variety of displays. Manychanges and modifications within the scope of the present embodimentsmay be made without departing from the spirit thereof, and the presentinvention includes all such changes and modifications.

1. (canceled)
 2. A computer readable medium having instructions storedthereon, which when executed by a processor, cause the processor tocarry out acts comprising: displaying a plurality of items of interest,each representing market information, in relation to a static scale in atrading interface associated with a computing device; identifying atleast one item of interest from the plurality of items of interest as abasis for automatically positioning the plurality of items of interestvia the computing device; updating the trading interface as the marketinformation changes via the computing device, whereby one or more of theplurality of items of interest moves in relation to the static scale;and automatically re-positioning the plurality of items of interest viathe computing device in response to expiration of a predetermined time.3. The computer readable medium of claim 2 where the static scale ismoved in response to the identified item of interest moving to apredetermined location in the trading interface.
 4. The computerreadable medium of claim 2 where the static scale changes in response tothe identified item of interest moving to a predetermined location inthe trading interface.
 5. The computer readable medium of claim 2 wherethe plurality of items of interest are moved in response to theidentified item of interest moving to a predetermined location in thetrading interface.
 6. The computer readable medium of claim 2 where theplurality of items of interest are changed in response to the identifieditem of interest moving to a predetermined location in the tradinginterface.
 7. The computer readable medium of claim 2 whereautomatically re-positioning the plurality of items of interestcomprises moving the static scale in response to a timer reaching thepredetermined time.
 8. The computer readable medium of claim 2 whereautomatically re-positioning the plurality of items of interestcomprises changing the plurality of items of interest in response to atimer reaching the predetermined time.